package com.atguigu.guli.service.vod.service;


import com.aliyuncs.exceptions.ClientException;

import java.io.InputStream;
import java.util.List;

/**
 * @desc 视频点播服务类
 * @auther Administrator
 * @create 2020/5/23
 */
public interface VideoService {

    /**
     * 上传视频文件
     *
     * @param inputStream      文件输入流
     * @param originalFilename 文件名
     * @return 视频地址
     */
    String uploadVideo(InputStream inputStream, String originalFilename);

    /**
     * 阿里云vod删除视频文件
     *
     * @param videoId 视频地址
     * @throws ClientException 异常
     */
    void removeVideo(String videoId) throws ClientException;

    /**
     * 根据ids批量删除视频
     *
     * @param videoIdList 视频id列表
     */
    void removeVideoByIdList(List<String> videoIdList) throws ClientException;

    /**
     * 获取视频播放凭证
     *
     * @param videoSourceId 视频播放地址
     * @return 凭证
     */
    String getPlayAuth(String videoSourceId) throws ClientException;
}
